﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using PreCommitHook.Datos.Interfaces;
using PreCommitHook.Datos.FabricaDatos;
using System.Data.SqlClient;

namespace PreCommitHook.Datos.DaosSqlServer
{
    public class DaoSqlServerAccesoUsuario:IDaoAccesoUsuario
    {
        IDaoAccesoConexion bd = FabricaConexion.DaoSqlServerAccesoConexion();

        /// <summary>
        /// Devuelve el correo del usuario
        /// </summary>
        /// <param name="usuario"></param>
        /// <returns></returns>
        public string FuncConsultarCorreo(string usuario)
        {
            SqlCommand command = new SqlCommand();

            try
            {
                bd.AbrirConexionBd();
                command.Connection = bd.ObjetoConexion();
                command.CommandType = System.Data.CommandType.StoredProcedure; //Tipo de comando que se va a ejecutar
                command.CommandText = "[dbo].[SELCorreoElectronico.sql]"; // Nombre del Procedimiento Almacenado en la Base de Datos
                command.CommandTimeout = 10;

                command.Parameters.AddWithValue("@usernameUsuario", usuario);
                SqlDataReader reader = command.ExecuteReader();

                while (reader.Read())
                {
                    string strUsuario = Convert.ToString(reader.GetValue(0));
                    return strUsuario;
                }

                reader.Close();
                bd.CerrarConexionBd();
                return "Error";
            }

            catch (SqlException)
            {
                bd.CerrarConexionBd();
                return "Error";
            }

            catch (Exception)
            {
                bd.CerrarConexionBd();
                return "Error";
            }
        }
    }
}
